A tile-based graphics system renders 2D or 3D computer graphics images using tile based rendering. As part of a tile-based rendering technique a rendering space is sub-divided into a plurality of regions called tiles or blocks (herein referred to as “tiles”), which each comprise a plurality of pixels. Tiles are often rectangular, but they may be other shapes such as triangular or hexagonal. The rendering space may correspond to an image for display on a screen, but other render targets, such as texture data in memory, are also possible. Tiles can be various sizes, for example tiles may be 16×16 pixels. In one example of a screen resolution, there are 1280×1024 pixels. At such a resolution, there would 5120 tiles, each comprising 16×16 pixels.
As a matter of terminology, “pixels” are individual image points which are displayed in a final image, whereas “fragments” are individual image points which are processed in order to generate the pixels for display in a final image. Some implementations may provide multiple fragments overlapping one pixel. Primitives are often polygons, typically triangles, but may have other forms such as points, lines or patches.
A display list is derived, for each tile, indicating primitives located either partially or wholly within the tile. Each tile is rendered using its display list. The objects are rasterized to determine which objects are present in each of the fragments of the tile.